這篇來補充一個很重要的東西,就是談到軟體版本升級時常會聽到的用語。
對軟體更新發佈來說,QA應該要是最了解每次改動內容以及測試狀態的人,
但在日常溝通上,常常會有每個人習慣用語不同,
明明在講同一件事情,卻因為用語不同會出現雞同鴨講的現象。
這邊先給出幾個範例句子,希望本篇看完之後,大家能夠分得出差別XD
「這個Issue先給他Workaround,下次Hotfix再出Solution。」
「這個Case這次來不及解,postpone到下個release。」
「這個Bug上個build不就解了?你去看一下driver upgrade了沒。」
「這個Error等client config update後就能解,有問題再來看。」
我自己把它們分成程度上跟發現時間的不同:
Error: 開發階段已知問題或是自定義的已知錯誤,主要用來除錯跟開發debug
以單一功能或是程式邏輯上的錯誤為主。
Bug & Defect: 開發測試階段發現的各式產品問題,通常由Error組合技導致
以產品整合功能與系統效能等全方面問題都包含在其中。
Issue & Case: 產品發佈到正式環境後,在正式環境發現或客戶回報的Bug們
以使用者體驗出發,整合系統環境與使用者情境為主的疑難雜症。
基本上在講的東西都是「問題」這件事,不過到後面階段也就越複雜也越緊急(?)
順帶一提,測試左移的目的就是想把Issue & Case 變成 Bug & Defect。
Build的話,這篇有比較詳細的描述,但就是「開發中」的軟體版本
提到好build、壞build、RC build,用來溝通某build能不能用,要不要上。
Patch在早期的軟體開發,會被想成一個正式大版的發佈,如MS的Service Pack
也指早期軟體屬於一包自解壓縮,自己安裝更新的軟體包Package
但現在比較多被用成緊急的修補,為了解決個案問題而做的小範圍改動。
Hotfix中文叫熱修補,通常指不停機的軟體服務更新,能快速生效並反映在客戶環境上
所以在軟體開發上面,Hotfix也是最常被使用的詞,以軟體發布的頻率還可分為:
Release通常指「已發布」到正式環境的Build,可以當動詞、形容詞跟名詞
例句如下:
Hotfix跟Release比較可以混用,但習慣上Release指大版本的功能更新
Hotfix則是指各種發佈到正式環境中,大大小小的BugFix與Patch的修正。
Upgrade 通常指App本身跟系統像是Driver或是需要「檔案」上的版本更新
也有些說法是把Upgrade當成Hotfix使用,指新舊版本的更新
Update 通常指pattern, component, config等等「狀態」上的更新
最常用的是 Latest update xxx version之類的用法
Bugfix很好理解,就是指產品缺陷的修復,然後會把這個修改排進到Hotfix中
Workaround常搭配Patch使用,處理一次性的個案等等。
Solution就是比較完整的解決方法,會出在Hotfix或是Release中修復產品問題。
這篇寫得有點像中英混合的晶晶體,但實際上工作日常真的會常有這樣的說法
其實有時候單講英文單字,可能比「熱修復」這種神奇的翻譯來得直接好懂。
到這邊可以回頭看一開始的例句,有沒有更了解了呢XD?